const puppeteer = require('puppeteer')

;(async () => {
  // 无头浏览器
  const browser = await puppeteer.launch({
    headless: false,
  })
  const page = await browser.newPage()

  await page.goto('http://localhost:8080/login.html')

  // 3. 初始页面截图
  await page.screenshot({
    path: `screenshot_${new Date().getTime()}.png`,
  })

  // 4. 获取dom元素 输入内容
  await page.type('.account', 'admin')
  await page.type('.password', 'admin')

  setTimeout(async () => {
    // 5. 模拟点击登录按钮
    const btnConfirm = await page.$('#btn-login')
    await Promise.all([btnConfirm.click(), page.waitForNavigation()])

    // 6. 登录后截图
    await page.screenshot({
      path: `screenshot_${new Date().getTime()}.png`,
    })
  }, 5000)

  // 7. 关闭浏览器
  // await browser.close()
})()
